public class demo1 {
    class Solution {
        public int maxProfit(int[] prices, int fee) {
            int n=prices.length;
            int[]f=new int[n];//表示该位置结束后属于买入状态
            int[]g=new int[n];//表示该位置结束后属于卖出状态
            f[0]=-prices[0];
            g[0]=0;
            for(int i=1;i<n;i++){
                f[i]=Math.max(f[i-1],g[i-1]-prices[i]);
                g[i]=Math.max(f[i-1]+prices[i]-fee,g[i-1]);
            }
            return Math.max(f[n-1],g[n-1]);
        }
    }
}
